package com.rc.saas.tenant.model.fault;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.rc.saas.tenant.base.BaseModel;
import com.rc.saas.tenant.model.converter.DisposeStatusConverter;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

public class RcElecPileFaultRecord extends BaseModel {
    @ExcelIgnore
    private Long pileFaultRecordId;

    @ExcelIgnore
    private Long elecStationId;

    @ExcelIgnore
    private Long elecPileId;

    @ExcelProperty(value = "站点名称",index = 0)
    private String stationName; //扩展字段
    @ExcelProperty(value = "电桩编号",index = 1)
    private String pileNo;
    @ExcelProperty(value = "枪顺序号",index = 2)
    private String gunNum;
    @ExcelProperty(value = "故障类型",index = 3)
    private String pileFaultType;
    @ExcelProperty(value = "故障描述",index = 4)
    private String pileFaultDetail;
    @ExcelProperty(value = "故障代码",index = 5)
    private String pileFaultCode;
    @ExcelProperty(value = "故障级别",index = 6)
    private Integer pileFaultLevel;
    @ExcelProperty(value = "处理状态",index = 7 , converter = DisposeStatusConverter.class)
    private Integer status;

    @ExcelIgnore
    private String remark;
    @ExcelIgnore
    private String createdBy;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createdTime;

    @ExcelIgnore
    private String lastUpdatedBy;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ExcelIgnore
    private Date lastUpdatedTime;

    public String getStationName() {
        return stationName;
    }

    public void setStationName(String stationName) {
        this.stationName = stationName;
    }

    public Long getPileFaultRecordId() {
        return pileFaultRecordId;
    }

    public void setPileFaultRecordId(Long pileFaultRecordId) {
        this.pileFaultRecordId = pileFaultRecordId;
    }

    public Long getElecStationId() {
        return elecStationId;
    }

    public void setElecStationId(Long elecStationId) {
        this.elecStationId = elecStationId;
    }

    public Long getElecPileId() {
        return elecPileId;
    }

    public void setElecPileId(Long elecPileId) {
        this.elecPileId = elecPileId;
    }

    public String getPileNo() {
        return pileNo;
    }

    public void setPileNo(String pileNo) {
        this.pileNo = pileNo;
    }

    public String getGunNum() {
        return gunNum;
    }

    public void setGunNum(String gunNum) {
        this.gunNum = gunNum;
    }

    public String getPileFaultType() {
        return pileFaultType;
    }

    public void setPileFaultType(String pileFaultType) {
        this.pileFaultType = pileFaultType;
    }

    public String getPileFaultDetail() {
        return pileFaultDetail;
    }

    public void setPileFaultDetail(String pileFaultDetail) {
        this.pileFaultDetail = pileFaultDetail;
    }

    public String getPileFaultCode() {
        return pileFaultCode;
    }

    public void setPileFaultCode(String pileFaultCode) {
        this.pileFaultCode = pileFaultCode;
    }

    public Integer getPileFaultLevel() {
        return pileFaultLevel;
    }

    public void setPileFaultLevel(Integer pileFaultLevel) {
        this.pileFaultLevel = pileFaultLevel;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getCreatedBy() {
        return createdBy;
    }

    public void setCreatedBy(String createdBy) {
        this.createdBy = createdBy;
    }

    public Date getCreatedTime() {
        return createdTime;
    }

    public void setCreatedTime(Date createdTime) {
        this.createdTime = createdTime;
    }

    public String getLastUpdatedBy() {
        return lastUpdatedBy;
    }

    public void setLastUpdatedBy(String lastUpdatedBy) {
        this.lastUpdatedBy = lastUpdatedBy;
    }

    public Date getLastUpdatedTime() {
        return lastUpdatedTime;
    }

    public void setLastUpdatedTime(Date lastUpdatedTime) {
        this.lastUpdatedTime = lastUpdatedTime;
    }
}